[急切]求VC++高手救急 读文件转存的问题

来源:百度知道 编辑:UC知道 时间:2024/05/24 02:01:36
本人小白 急切求各位大大解决问题 麻烦回答详细 越详细越好 越白越好

有一个文件 包含两部分 前半部分是修改过的邮件 后半部分是修改前的文件 两部分放到一起了
结构大约是

dear Tom:
thank you for.......................
........................................
........................................
..........................
missing you
原文:
dear tom:
thank you for ......................
........................................
........................................
..........................
missing you

基本就这么一个示意图 反正就是一个 正文1+“原文”+正文2(由于邮件很长,也不是一两封,所以以上只是示意一个文章结构)
目的:
1。我想要把正文2保存下来,舍弃正文1+“原文”
2。希望使用串的子串的运算方式判断位移量然后存储后半部分的方法解决
3。本人纯菜鸟 望给详细语句
如果逐行匹配应该怎么写?我纯小白

如果你的“原文:”是固定不变的话,你可以采用一行行读取的办法,每读一行,判断当前行文本是不是“原文:”如果不是,就继续读;如果是,从下一行开始就可以开始写文件了
=========================
你每读入一行,都用lstrcmp来比较就是了,如果返回值为0,表示匹配

关键在于你的文件的原文和正文的分界标识。
如果没有明显统一的标识是无法做到全部准确处理的,但是可以模糊处理,会有部分出错。大致可以搜索第二个位于行首的“dear”,如果找到再看本行字符串长度,如大于20则可舍弃,否则应该就是你要开始保存的行。
fin.geline;fout.writeline;ok!

如果采用逐行匹配, 读取每一行, 然后判断这一行是否包括"原文:"这个串.,如果有那么下面所有行均是有效数据. 如果不是继续判断下一行.